Method and apparatus for selectively altering a televised video signal in real-time

ABSTRACT

The method and apparatus operates in a television receiver to identify unwanted broadcast segments, such as commercial advertisements, of a television signal in real-time for the purpose of selectively altering the television display during each unwanted segment. A signature pattern associated with each segment of the television signal is detected and compared to stored signature patterns representative of selected segments such as commercial advertisement segments. If the signature pattern matches one of the stored signature patterns, the segment is thereby immediately identified as being one of the selected segments and is processed in real-time to mute or otherwise alter the television signal during the segment. If the signature pattern of the segment does not match any of the stored signature patterns, the segment is analyzed to determine whether the segment is nevertheless a selected segment and, if so, its signature pattern is stored along with the stored signature patterns.

RELATED APPLICATION

This is a continuation-in-part of co-pending application Ser. No.09/452,040 filed Nov. 30, 1999, which is a continuation of applicationSer. No. 08/742,983 filed Nov. 1, 1996, now U.S. Pat. No. 6,002,443.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to television signal processing systems and inparticular to television signal processing systems for detectingselected segments of a television signal such as commercialadvertisement segments.

2. Description of Related Art

It has long been a desire of many television viewers to have a systemwhich automatically detects selected segments of a television signalsuch as commercial advertisements or other unwanted broadcast segmentsin real-time during a television broadcast for the purposes of, forexample, muting the audio portion of the television broadcast during theunwanted broadcast material. Although a wide variety of techniques havebeen developed for detecting selected segments of television signals,heretofore there have been no sufficiently effective and economicalsystems that automatically operate in real-time for muting thetelevision signal during the selected segments or for similar purposes.

Examples of broadcast segment detection systems include systems fordetecting commercial advertisements during the playback of a televisionprogram on a video cassette recorder (VCR) for the purpose ofcontrolling the VCR to skip or scan over the commercial advertisementsduring playback such that a viewer may watch the recorded televisionprogram without significant commercial advertisement interruptions. Oneparticularly effective system is described in U.S. Pat. No. 5,333,091entitled “Method and Apparatus for Controlling a Videotape Player toAutomatically Scan Past Recorded Commercial Messages” and sold under thetrademark “Commercial Advance.” With the system of U.S. Pat. No.5,333,091, an automatic editing device is coupled between a conventionalVCR and a conventional television set. As a broadcast program isrecorded on a videotape by the VCR, the editing device detects andrecords the timing and duration of selected events, such as black framescombined with low audio, that separate segments of the broadcast andcreates a time-based map of the selected events. After the recording iscompleted, the editing device analyzes the time-based map and determinestherefrom which segments are commercial advertisement segments and whichare program segments. The editing device then records control signals onthe videotape prior to and following the commercial advertisementsegments. Upon playback, the control signals control the VCR tofast-scan over the commercial advertisement segments so that therecorded broadcast can be viewed substantially without interruption.Related techniques are described in U.S. Pat. No. 5,455,630 and in PCTapplication PCT/US94/00223 published as WO 94/16442.

Although the systems of U.S. Pat. Nos. 5,333,091 and 5,455,630 and PCTapplication PCT/US94/00223 are very effective in skipping overcommercial advertisements and other unwanted broadcast material duringthe playback of a recorded broadcast program on a videotape, the systemsdo not operate in real-time during a received broadcast.

Other examples of broadcast segment detection systems include systemsfor detecting commercial advertisements during the recording of atelevision program on a VCR for the purposes of controlling the VCR toskip the commercial advertisements during recording such that a viewermay later watch the recorded television program without any commercialadvertisement interruptions whatsoever. An example is a system describedin U.S. Pat. No. 4,602,297 entitled “System for Editing CommercialMessages from Recorded Television Broadcasts” which stores and delaysthe output of a received broadcast signal to a VCR until it candetermine whether the delayed portion of the broadcast signal includescommercial advertisements. To this end, the system detects commercialadvertisements or groups of commercial advertisements within the delayedportion by detecting amplitude drops in the broadcast signal anddetermining whether time intervals between the amplitude dropscorrespond to normal durations of commercial advertisements or groups ofcommercial advertisements. The system then outputs only those portionsof the delayed signal to the VCR that do not correspond to commercialadvertisements of groups of commercial advertisements. Hence, thebroadcast signal is recorded without commercial advertisements forfuture playback. However, the system does not operate in real-time todetect commercial advertisements within a received broadcast signal.Rather the system instead requires that the received broadcast signal betemporarily stored and delayed. Commercial advertisements may each beone minute or perhaps more in length thereby requiring a significantamount of storage for temporarily storing portions of the broadcastsignal and thereby requiring a system which is not sufficientlyeconomical for most purposes.

Other examples of systems for detecting commercial advertisements duringthe recording of a television program are described in U.S. Pat. No.4,750,052 entitled “Apparatus and Method for Automatically DeletingSelected Program Intervals from Recorded Television Broadcasts” and U.S.Pat. No. 4,782,401 entitled “Editing Method and Apparatus forCommercials During Video Recording”, both of which also operate todetect commercial advertisements based upon intervals occurring betweenamplitude drops or other fades in a received broadcast signal. Ratherthan storing and deleting the received signals prior to output to a VCR,however, the systems of U.S. Pat. Nos. 4,750,052 and 4,782,401 recordthe signals on a videotape using a VCR and control the VCR to rewind atthe end of each commercial advertisement or group of advertisements suchthat further program signals are recorded over the commercialadvertisements. As with the previously described system, the systems ofU.S. Pat. Nos. 4,750,052 and 4,782,401 do not operate in real-time andare not sufficiently economical for most purposes.

Moreover, none of the aforementioned systems for detecting broadcastsegments during the recording of a television program operate inreal-time for the purpose of, for example, muting the audio duringcommercial advertisements or other broadcast segments.

Still other examples of broadcast segment detection systems includesystems for detecting commercial advertisements in broadcast televisionsignals for the purposes of verifying that selected commercialadvertisements are being broadcast on the proper days and at the propertimes. Examples include U.S. Pat. No. 5,504,518 entitled “Method andSystem for Recognition of Broadcast Segments” wherein stored digitizedsegments of broadcast signals are processed by an expert system todetermine whether any particular segment corresponds to a selectedsegment of interest, such as a selected commercial advertisement.Segments that cannot be identified by the expert system, such as new orotherwise unknown segments, are routed to a human operator for verifyingthat the segment represents a commercial advertisement rather than aportion of a television program. Selected segment information such asthe date and time of broadcast of the segments of interest are recordedand tabulated in a report for use by, for example, broadcast advertisersfor verifying that the selected segments were broadcast on the properdates and at the proper times. As part of its analysis of the segments,the expert system compares broadcast signatures with a database ofsignatures. A variety of techniques are described for defining anddetecting signatures. The expert system also considers various cuesincluding the lengths and relative groupings of segments and theintervals there between. No real-time analysis appears to be performedby the expert system or by the human operator.

Another system for commercial advertisement broadcast verification isdescribed in Japanese Laid-Open Patent Application No. 1-174192, of SonyCorporation, entitled “Television Signal Processing Unit” wherein anentire days worth of broadcast programs are recorded on videotape. Therecorded broadcasts are analyzed to identify commercial advertisementsegments by intervals therebetween as detected by luminance signalconsiderations. The commercial advertisements, and only the commercialadvertisements, are then output and recorded on a second videotape. Thesecond videotape thereby contains a day's worth of commercialadvertisements in extracted form that may be viewed by a human operatorfor broadcast verification purposes. Again, no real-time detection ofcommercial advertisements is performed.

Examples of systems for detecting broadcast segments, such as commercialadvertisement segments, which have some real-time detection capabilityinclude U.S. Pat. Nos. 4,420,769 entitled “Device for the AutomaticEditing, at the Receiver, of Unwanted Program Material from BroadcastElectrical Signals” and U.S. Pat. No. 4,750,213 entitled “Method andSystem for Editing Unwanted Program Material from Broadcast Signals”.U.S. Pat. No. 4,420,769 describes a system wherein a human operatoridentifies program segments to be eliminated from a broadcast signalcausing a digital code word or signature for the segment to be stored inmemory. Subsequently, if the same segment is encountered, the systemautomatically compares digitized portions of the received signal withthe stored signatures to recognize the segment and then to blank out orotherwise eliminate the segment in real-time. One significant problemwith this system is that a human operator must first detect programsegments to be eliminated. Also, a significant amount of data processingis required to establish and compare the signatures in a reliablemanner. U.S. Pat. No. 4,750,213, by the same inventor, sets forthimprovements intended, in part, to reduce the processing time required.The system of U.S. Pat. No. 4,750,213 also includes a delay or otherstorage device for allowing a received signal to be delayed until adetermination can be made by the human operator as to whether aparticular segment of the received signal should be eliminated. If so,the received, delayed signal is output with the selected segment blankedout or otherwise eliminated. Although U.S. Pat. No. 4,750,213 mayrepresent an improvement over U.S. Pat. No. 4,420,769, it shares thedisadvantage that a human operator must detect program segments to beeliminated.

Another example of a system which has some real-time detectioncapability is U.S. Pat. No. 5,151,788 entitled “Method and Apparatus forIdentifying and Eliminating Specific Material from Video Signals”wherein commercial advertisement broadcast segments are distinguishedfrom program segments by the relative level of “activity” within thebeginning of each segment. If the activity level is high, the segment ispresumed to be a commercial advertisement. The system detects the amountof activity within the first few seconds of a segment following a blankframe and operates to mute or otherwise eliminate the remaining portionsof the segment if the detected activity level is representative of acommercial advertisement. The system may control a VCR to stop recordingfor the remainder of the segment. The patent describes that the optimumtime period during which the activity level should be detected is 8seconds. One disadvantage of the system is that the detection ofcommercial advertisements based upon an activity level is likely to beunreliable for many broadcasts and, even when the system does correctlydetect a commercial advertisement, that detection does not occur until 8seconds into the commercial advertisement.

Other references that relate to systems for detecting selected segmentsof a broadcast signal such as commercial advertisement segments of atelevision signal are described in the following references: U.S. Pat.No. 3,919,479 entitled “Broadcast Signal Identification System”; U.S.Pat. No. 4,229,765 entitled “Remote Audio and Brightness Control Systemfor a Television”; U.S. Pat. No. 4,230,990 entitled “Broadcast ProgramIdentification Method and System”; U.S. Pat. No. 4,259,689 entitled“Television Advertising Editing System”; U.S. Pat. No. 4,333,110entitled “Television Editing System”; U.S. Pat. No. 4,390,904 entitled“Automatic Circuit and Method for Editing Commercial Messages fromTelevision Signals”; U.S. Pat. No. 4,667,466 entitled “Broadcast ProgramIdentification Method and Apparatus”; U.S. Pat. No. 4,697,209 entitled“Methods and Apparatus for Automatically Identifying Programs Viewed orRecorded”; U.S. Pat. No. 4,739,398 entitled “Method, Apparatus andSystem for Recognizing Broadcast Segments”; U.S. Pat. No. 4,752,834entitled “Reciprocating Recording Method and Apparatus for Controlling aVideo Recorder so as to Edit Commercial Messages from a RecordedTelevision Signal”; U.S. Pat. No. 5,019,899 entitled “Electronic DataEncoding and Recognition System” and European Patent ApplicationPublication No. 0161512 entitled “Program Identification System”.

Hence various techniques have been developed for detecting selectedbroadcast segments such as commercial advertisements within a televisionsignal. None of the techniques described above, however, are effectivefor reliably and automatically detecting broadcast segments in real-timewithout the need of a human operator. Accordingly, it would be desirableto provide a simple, inexpensive system which reliably detects selectedsegments of a broadcast signal without requiring a human operator andwherein, either immediately or after some period of time, all or mostselected segments can be detected in real-time.

SUMMARY OF THE INVENTION

In accordance with the invention, a method and apparatus is provided toidentify selected segments of a television broadcast signal in real-timefor the purpose of muting or otherwise altering the video and/or audioportions of the signal during the selected segments. Hereinafter“selected segment” refers to any selected portion of a broadcast signalincluding, for example, unwanted broadcast segments such as commercialadvertisement segments. In one embodiment, the method includes the stepsof detecting a signature pattern associated with the beginning of areceived segment of the television signal and comparing the signaturepattern to stored signature patterns representative of selectedsegments. If the signature pattern matches one of the stored signaturepatterns, the received segment is thereby immediately identified asbeing one of the selected segments and can be processed accordingly inreal-time to, for example, mute the audio and video portions of thereceived segment.

If the signature pattern of the received segment does not match any ofthe stored signature patterns, the received segment may be analyzed todetermine whether it is nevertheless one of the selected segments and,if so, its signature pattern is stored along with the stored signaturepatterns. The analysis to determine whether the received segment is oneof the selected segments even though its signature does not match any ofthe stored signatures may be performed by, for example, detecting thelength of the received segment upon its completion and then determiningwhether the length of the received segment matches any of apre-determined set of permissible lengths for selected segments. If so,the segment is identified as being a selected segment and its signaturepattern is stored along with the other stored signature patterns suchthat, the next time the same segment is received, its signature willthen match one of the stored signatures and therefore the receivedsegment will be identified promptly as a selected segment. A segment mayalso be manually designated as a selected segment, which likewiseresults in the corresponding signature being stored.

In one implementation, no stored signatures are initially provided.Hence, the first time any particular selected segment is encountered, itis not immediately identified as being a selected segment and thereforethe segment will not be muted. However, the next time the same segmentis encountered, the segment will be immediately and automatically muted.As more and more selected segments are encountered and their respectivesignature patterns stored, the more and more likely it becomes that anyparticular selected segment encountered while watching a televisionprogram will be promptly detected based upon its stored signature andautomatically muted. Hence, even though no stored signatures areinitially provided, a database of signatures is soon developed. Also,the selected segment detection method may be performed even while thetelevision set is otherwise not in use to thereby detect and storesegment signatures in a background mode to quickly develop a database ofsignatures. Alternatively, a database of the signatures of commonsegments, such as common commercial advertisement segments, may beinitially provided at the time of manufacture or subsequently downloadedsuch that the common segments are thereby automatically muted even thefirst time they are encountered.

For many television broadcast systems, commercial advertisements appearin groups of two or more. When used in connection with such systems, themethod of the invention may operate to not only mute the detectedcommercial advertisements of a commercial advertisement group but ratherto mute the entire group, including other unwanted broadcast segmentsappearing within the group, such as station breaks, news bulletins,public service announcements, etc.

Depending upon the implementation, the method identifies the beginningof a segment by detecting pre-determined event markers which separatesegments. When implemented for use in North America, the method may, forexample, identify a period of one or more black frames combined with lowaudio as being an event marker representative of the beginning of asegment. When implemented for use in Europe, the method may insteadidentify periods of one or more colored frames, such as blue frames,combined with low audio as being an event marker. When implemented foruse in Japan, the method may instead identify a frame break combinedwith a period of low audio as being an event marker. In any case, oncean event marker denoting the beginning of a broadcast segment isdetected, the method promptly extracts a signature from the segment forcomparison against stored signatures. The signature may, for example, bea binary hash code representative of whether selected lines of aselected frame near the beginning of the segment exceed pre-determinedluminance threshold levels. By extracting the signature near thebeginning of the segment, a matching signature may be detected and thesegment muted or otherwise altered before a significant portion of thesegment has been displayed. Preferably, the signature is based on framesappearing during the first one second of the segment.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, objects, and advantages of the present invention willbecome more apparent from the detailed description set forth below whentaken in conjunction with the drawings in which like reference numeralsidentify correspondingly throughout and wherein:

FIG. 1 is a block diagram illustrating a television set incorporating acommercial advertisement detecting and muting system configured inaccordance with a first exemplary embodiment of the invention fordetecting a commercial advertisement or other selected broadcast segmentin real-time during a television broadcast and for muting video andaudio portions of the television signal during the commercialadvertisement;

FIG. 2 is a timing diagram illustrating exemplary groupings ofconsecutive commercial advertisement segments within a televisionbroadcast signal analyzed by the system of FIG. 1 and illustrating eventmarkers separating the broadcast segments;

FIG. 3 is a timing diagram illustrating the muting of luminance andaudio portions of a television signal provided by the system of FIG. 1for a pair of broadcast segments both identified as being commercialadvertisements;

FIG. 4 is a timing diagram illustrating exemplary predetermined pointsin time following a first event marker wherein the system of FIG. 1searches for a second event marker for the purpose of determiningwhether the first event marker corresponds to the beginning of acommercial advertisement segment and particularly illustrating a examplewherein a second event marker is found at one of the predeterminedpoints in time thereby indicating that the first event markercorresponds to the beginning of a commercial advertisement segment;

FIG. 5 is a timing diagram similar to that of FIG. 4, but wherein asecond event marker is not found until after all of the predeterminedpoints in time thereby indicating that the first event marker does notcorrespond to the beginning of a commercial advertisement segment;

FIG. 6 is a timing diagram similar to that of FIG. 4, but wherein asecond event marker is found but not at one of the predetermined pointsin time thereby also indicating that the first event marker does notcorrespond to the beginning of a commercial advertisement segment;

FIG. 7 is a timing diagram similar to that of FIG. 4, wherein a secondevent marker is found at one of the predetermined points in time therebyalso indicating that the first event marker corresponds to the beginningof a commercial advertisement segment but wherein yet another eventmarker, which must be ultimately ignored, is found between the others;

FIG. 8 is a flowchart illustrating an exemplary method performed by thesystem of FIG. 1 while the television set is in operation for detectingand muting commercial advertisements during a television broadcastwherein, among other features, a signature corresponding to an eventmarker is compared against a database of signatures corresponding toknown commercial advertisements to determine whether the event markercorresponds to the beginning of a commercial advertisement segment;

FIG. 9 is a flowchart illustrating steps performed in furtherance of themethod of FIG. 8 to read a segment signature corresponding to an eventmarker;

FIG. 10 is a representation of a single exemplary test frame of atelevision broadcast signal analyzed during execution of the steps ofFIG. 9 and in particular illustrating exemplary signature test lines ofthe frame from which the signature is determined;

FIG. 11 is a representation of an exemplary bit string binary hash codesignature corresponding to the frame of FIG. 10 and in particularshowing exemplary bit values each representative of whether the averageluminance of a corresponding test line of the frame exceeds apre-determined threshold;

FIG. 12 is a flowchart illustrating steps performed in furtherance ofthe method of FIG. 8 to determine if an event marker neverthelesscorresponds to the beginning of a commercial advertisement segment eventhough the signature corresponding to the event marker does not matchany of the signatures of the database;

FIG. 13 is a flowchart illustrating steps performed in furtherance ofthe method of FIG. 8 to store a signature in the database after it hasbeen determined that the signature corresponds to a commercialadvertisement segment;

FIG. 14 is a representation of a signature database accessed duringexecution of the steps of FIG. 13 wherein the database is configured asa RAM storing a single record of information, including broadcastdate/time information, for each unique commercial advertisementsignature to thereby allow records to be selectively overwritten asneeded based, for example, upon the broadcast date/time information;

FIG. 15 is a diagram similar to that of FIG. 14 but wherein the databaseis configured as a first-in first-out (FIFO) queue;

FIG. 16 is a diagram similar to that of FIG. 14 but wherein the databaseis configured to store the signature and broadcast date/time informationfor each detected broadcast of each commercial advertisement to therebyallow verification that selected commercial advertisements are beingbroadcast on the proper days and at the proper times;

FIG. 17 is a flowchart illustrating a method for operating the system ofFIG. 1 wherein the system is operated even while the television set isotherwise not in use to thereby detect and store commercialadvertisement segment signatures in a background mode to thereby quicklydevelop a full database of signatures;

FIG. 18 illustrates a system wherein an apparatus performing the methoddescribed with reference to FIGS. 1-17 is provided external to atelevision set; and

FIG. 19 illustrates a PCTV configured with hardware or software forperforming the method described with reference to FIGS. 1-17.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Referring to the Figures, exemplary embodiments of the invention aredescribed for use with a television set for detecting “unwantedsegments”, such as commercial advertisements, in a television broadcastsignal. Unwanted segments may also include other segments designated bya viewer, such as segments that may be deemed by a parent to beinappropriate for viewing by children. Upon detection of an unwantedsegment, the audio and video components of the received broadcast signalmay be muted. Alternatively, a secondary signal source may besubstituted for viewing during the unwanted segment. Initially, anoverview is provided with reference to the block diagrams and timingdiagrams of FIGS. 1-7. Then, further details of particularimplementations are provided with reference to the flowcharts and blockdiagrams of FIGS. 8-19.

FIG. 1 illustrates a television set 100 having a receiver 102 and amonitor 104. Television receiver 102, which includes a television tuner,receives an input broadcast television signal from an antenna 106 orfrom any other appropriate input source such as a coaxial cable input(not separately shown) and outputs a received television signal foreventual display by monitor 104. In this exemplary implementation, thereceived television signal is an analog NTSC signal including audio,luminance and chrominance components. In other implementations, thetelevision signal is a PAL or SECAM signal or digital signal such as anHDTV signal. Monitor 104 displays the video portions of the televisionsignal and plays the audio portions through speakers (not separatelyshown). Rather than routing the received television signal directly tothe monitor for display, the television signal is first routed through acommercial advertisement detecting and muting system 108 which operatesin real-time to detect target or selected segments of the televisionsignal and to mute selected components of the television signal duringthose segments prior to output to monitor 104. In the exemplaryimplementation, the selected segments are commercial advertisements. Themuted components of the television signal are the audio and luminancecomponents. In other implementations, other selected segments may bedetected or other components of the signal may be muted or otherwiseprocessed. Commercial advertisement detecting and muting system 108 maybe configured as a self-contained module having both analog and digitalelectronics for installation in an otherwise conventional televisionset. In other implementations, the commercial advertisement detectingand muting system may be provided as an after-market device configuredfor use with a television set having audio and video outputs. In stillother implementations, particularly for digital television receivers,the commercial advertisement detecting and muting system may beimplemented partially or entirely with software.

Detection of commercial advertisement segments is achieved as follows.Within detecting and muting system 108, the television signal is firstrouted through a broadcast segment event marker and signature detector110 which detects event markers separating broadcast segments of thetelevision signal and, for each segment, detects a signature. Abroadcast segment may be a commercial advertisement segment or a portionof a television program, movie, news show, “infomercial” etc.hereinafter referred to as program segments. As noted, the broadcastsegments are separated by event markers. In the exemplary implementationwhich is for use in North America, an event marker is a period of one ormore black frames combined with low audio. When implemented for use inEurope, the event marker may also be a period of one or more coloredframes, such as blue frames, combined with low audio. When implementedfor use in Japan, an event marker is a frame break combined with aperiod of low audio extending from slightly before to slightly after theframe break.

Each unique broadcast segment has a unique signature. The signature maybe any unique characteristic of the segment that can be used todistinguish one segment from another. As will be described below, in oneexemplary implementation, the signature may be a bit string hash coderepresentative of whether each of a set of selected lines of a selectedframe of a received segment has an average luminance level that exceedsa pre-determined threshold. The selected frame may be, for example, thetenth frame following the completion of the event marker marking thebeginning of the segment. The selected lines may be, for example, thefirst 64 odd lines of the frame beginning at line 23. Other signaturesmay alternatively be employed.

Referring again to FIG. 1, as each broadcast segment is received, thesignature for that broadcast segment is detected in real-time bydetector 110. The signature is routed to a control unit 126 whichaccesses a signature memory unit 128 to determine whether the detectedsignature matches any of a set of signatures stored therein known tocorrespond to commercial advertisement segments. If the detectedsignature matches one of the stored signatures, then the control unitidentifies the broadcast segment from which the signature was taken asbeing a commercial advertisement segment and forwards a mute controlsignal to a video/audio mute unit 130. The mute unit also receives thetelevision signal directly from detector 110. In response to the mutecontrol signal, the mute unit mutes the audio and luminance componentsof the television signal during the commercial advertisement segment andforwards the muted signal to monitor 104. The mute control signal ismaintained during the entire commercial advertisement segment. In theexemplary implementation, the signature memory unit stores, for eachcommercial advertisement signature, the length or duration of thesegment. The control unit reads this information and thereby knows whento terminate muting. In other implementations, muting is terminated upondetection of a next event marker. The former technique is preferredbecause event markers may coincidentally appear in the middle of acommercial advertisement segment. If muting is always terminated upondetection of a next event marker, muting could erroneously be removed inthe middle of a commercial advertisement.

Hence, the system mutes the output signal during a detected commercialadvertisement segment. Additionally, the system may continue the mutethroughout an entire commercial advertisement group containing thedetected commercial advertisement segment. To this end, the systemdetermines when the commercial advertisement group began and continuesmuting for at least some minimum predetermined time period, such as twominutes, following the beginning of the group. In this manner,non-commercial advertisements of the group are muted as well as anycommercial advertisements of the group not having a previously storedsignature. The manner by which the system determines the beginning of acommercial advertisement group for the purposes of muting the entiregroup will be described below.

In some implementations, “muting” means that the amplitudes of the audioand luminance components of the output signal are reduced such that theviewer of monitor 104 sees a dimmed image and hears reduced audiolevels. In more general terms, “muting” is used to refer to anyalteration of the broadcast signal. Such alteration may include, inaddition to reducing audio and video levels, switching to an alternatesignal source.

FIG. 3 is a timing diagram illustrating the muting of luminance 132 andaudio 134 components of a television signal during two consecutivedetected commercial advertisement segments between a pair of un-mutedprogram segments. As can be seen, the levels of both the audio andluminance components are ramped down immediately after the beginning ofthe first commercial advertisement segment and are ramped up immediatelyafter the end of the second commercial advertisement segment. Mute unit130 (FIG. 1) also superimposes an audio chime over the audio signal asthe audio signal is increased to its pre-mute level. The chime isprovided to alert a viewer that the muted commercial advertisementsegments have completed. This is particularly desirable if the nextprogram segment begins with a silent audio track, perhaps accompanied byprogram credits. Without the chime, the viewer, whose attention may beelsewhere, might not realize that a program segment of interest isbeginning. In other implementations, the chime may also be produced atthe beginning of each muted commercial advertisement segment.

Referring again to FIG. 1, if the signature detected by detector 110does not match any of the stored signatures of memory unit 128 and thesystem is not currently muting an entire commercial advertisement group,then no mute control signal is provided to mute unit 130 and thetelevision signal is thereby forwarded without modification by the muteunit to monitor 104. In this manner, program segments remain un-muted.More specifically, when a program segment is received, its signature isdetected and compared against those of memory unit 128. Because thememory unit only stores segments corresponding to commercialadvertisement segments or other selected broadcast material, the programsegment signature will not match any stored segment and no muting willtherefore occur during the program segment.

Hence, commercial advertisement detecting and muting system 108 operatesto mute in real-time any broadcast segment having a signature matchingone of the signatures of memory unit 128. Naturally, commercialadvertisements will be received for which a signature was not previouslyrecorded in memory unit 128 and the commercial advertisement willtherefore not be muted (unless it is part of an entire group ofcommercial advertisements being muted). The library of signatures inmemory unit 128 may be built up in various ways. One approachautomatically adds a new signature when a commercial advertisement isdetected with a signature not already in the library. Detecting andmuting system 108 may be provided with a means for determining whether abroadcast segment, having a signature that does not match any signaturerecorded in the database, nevertheless is a commercial advertisementsegment. Once a determination is made that a broadcast segment is acommercial advertisement segment or other selected segment, thesignature of the segment is added to the database such that the segmentcan be muted in real-time the next time it is encountered.

Another approach adds a new signature upon receipt of an operatorcommand. This “manual” approach allows the television viewer todesignate a particular commercial advertisement or other broadcastsegment for muting whenever it is re-broadcast. The remote control unitfor television set 100 may be provided with a button or other controlthat effectively operates as a “kill this commercial” switch. Of course,the manual and automatic signature capturing process are not mutuallyexclusive.

Signatures may also be pre-stored in memory unit 128 prior to deliveryof television set 100 to the consumer or may be downloaded periodicallyfrom a central storage unit. Signatures may be downloaded on anotherwise unused broadcast channel or may be encoded within an activebroadcast channel, such as in the vertical blanking interval. Signaturesmay also be downloaded via a telephone connection or via a dedicatedcommunications connection.

Automatic Addition of Signatures to Library

In some implementations of the invention, commercial advertisementsegments may be distinguished from program segments automatically forthe purpose of creating a library of signatures. The automaticrecognition process relies on the observation that commercialadvertisement segments almost always appear in groups of two or more andare each of one or more relatively short pre-determined lengths such as15 seconds, 30 seconds and 60 seconds. The groups are typically at leasttwo minutes long. FIG. 2 illustrates an exemplary television signalhaving program segments 112, 114, and 116 followed by groups ofcommercial advertisement segments 118, 120 and 122, respectively, witheach segment separated by an event marker 124. Commercial advertisementgroup 118 includes two commercial advertisement segments of 60 secondseach. Group 120 includes two commercial advertisement segments of 30seconds and one of 60 seconds. Group 122 also includes two 60 secondcommercial advertisement segments. Although not shown in FIG. 2,commercial advertisement groups may additionally include other segmentssuch as station breaks, news bulletins, public service announcementsetc., which are typically not of the same lengths as commercialadvertisements, i.e. the other segments are not 15, 30 or 60 secondslong. If other segments are included, the group is typically at leasttwo minutes and twenty seconds long. The manner by which thenon-commercial advertisement segments within a group are processed willbe described below.

The automatic determination of whether a broadcast segment is acommercial advertisement segment or other selected segment, assumingthat its signature does not match a stored signature, is achieved asfollows. As noted above, and as illustrated in FIG. 2, commercialadvertisement segments are distinguishable from program segments in thatcommercial advertisement segments almost always appear in groups of twoor more and are each of one or more relatively short predetermineddurations such as 15 seconds, 30 seconds and 60 seconds. Accordingly, ifan event marker corresponds to the beginning of a commercialadvertisement segment, a second event marker should occur after one ofthe pre-determined periods of time following the first event marker. Ifan event marker corresponds to the beginning of a program segment, asecond event marker will not likely occur until after one of thepre-determined periods of time following the first event marker.

Hence, if a second marker occurs, for example, 15, 30 or 60 secondsfollowing a first event marker, a determination is made that the segmentbetween the first and second event markers is therefore probably acommercial advertisement or other selected segment and the signaturedetected following the first event marker is added to the signaturesstored in memory unit 128 (FIG. 1). If a second marker does not occur at15, 30 or 60 seconds following a first event marker, a determination ismade that the segment between the first and second event markers istherefore probably not a commercial advertisement segment and thesignature detected following the first event marker is merely discarded.

In practice, for North American broadcast systems, the lengths ofcommercial advertisements often deviate slightly from the standard 15,30 and 60 second durations. Accordingly, the system searches forsubsequent event markers within a range of time centered around eachexpected event marker time. For a 30 second commercial advertisement,the system may search, for example, for event markers occurring 28 to 32seconds following a previous event marker.

In any case, if a determination is made that a broadcast segment is acommercial advertisement, then the next time the same commercialadvertisement segment is received the following occurs. The signature ofthe commercial advertisement segment is again detected by detector 110and compared against those stored in memory unit 128. Upon determiningthat the newly detected signature matches the previously storedsignature, the commercial advertisement segment is muted in real-time.In this manner, the system builds a database of commercial advertisementsegment signatures and each commercial advertisement segment istypically displayed only once in its un-muted form. Thereafter, as longas the signature of the commercial advertisement segment remains in thedatabase, the segment is detected and muted in real-time. Hence, even ifthe signature database of memory unit 128 is initially empty, a databaseof commercial advertisement signatures is developed and soon all or mostcommercial advertisements that are commonly shown are detected andmuted. Of course, it is possible for a non-commercial segment of adesired television program to be 15, 30 or 60 seconds long such that itssignature will be added to the database along with those of commercialadvertisements. Hence, the next time the same television program isreceived the segment will be muted under the assumption that it is acommercial advertisement. This is not a particularly significantproblem. The viewer merely over-rides the mute and continues to view theprogram. Moreover, television programs are not typically viewedrepeatedly and, as will be described below, the system may be configuredto erase signatures not frequently encountered such that, the next timethe same television program is viewed, the signature of that segment ofthe program may have already been erased. Also, it is possible for newsbulletins, public service announcements etc. to also be 15, 30 or 60seconds long such that their signatures will be added to the databasefor future muting. Again, this is not a significant problem. Indeed, ifthe news bulletins, public service announcements etc. are broadcastfrequently, the viewer may consider their subsequent muting to be quiteadvantageous.

As noted, a determination of whether a segment constitutes a commercialadvertisement segment even though its signature does not match a storedsignature is performed based upon the time periods separating eventmarkers. FIGS. 4-7 illustrate various examples of event marker groupingswithin a television signal to help illustrate the manner by which thisdetermination of a commercial advertisement segment is performed.

FIG. 4 illustrates an example wherein a second event marker occurs atone of the predetermined time periods following a first event marker.More specifically, FIG. 4 shows a pair of event markers 133 and 135occurring 60 seconds apart. Shortly after first event marker 133 isdetected, the signature for the program segment beginning at that eventmarker is temporarily recorded. Then, a determination is made as towhether a second event marker occurs at 15, 30 or 60 seconds followingthe first event marker. In the example of FIG. 4, second marker 135 isdetected 60 seconds from the first marker. Accordingly, shortlythereafter, the temporarily recorded signature is saved i.e. it isstored in memory unit 128 (FIG. 1) along with any other pertinentinformation such as the duration of the corresponding commercialadvertisement as determined by the time period between the first andsecond event markers. If the second marker had alternatively occurred ateither 15 or 30 seconds following the first event marker, the signaturewould have been saved then instead.

With further reference to FIG. 4, it should be noted that the detectionof second event marker 135 also triggers a temporary recording of thesignature of the segment beginning at the second event marker. Thissignature is compared with those stored in the memory unit (FIG. 1). Aswith the first signature, if a match is detected then the broadcastsegment beginning at the second event marker is immediately muted and ifno match is detected, then the signature is temporarily recorded until adetermination can be made whether the broadcast segment beginning at thesecond event marker is nevertheless a commercial advertisement segment.

FIG. 5 illustrates an example wherein a second event marker does notoccur at one of the pre-determined time periods following a first eventmarker. More specifically, FIG. 5 shows a pair of event markers 136 and138 occurring more than 60 seconds apart. Shortly after first eventmarker 136 is detected, the signature for the broadcast segmentbeginning at that event marker is temporarily recorded. Then, adetermination is made as to whether a second event marker occurs at 15,30 or 60 seconds following the first event marker. In the example ofFIG. 5, no event marker is detected at either 15, 30 or 60 secondsfollowing the first event marker. Accordingly, shortly after the time ofevent marker 136 plus 60 seconds, the temporarily recorded signature isdiscarded. (Again it should be noted that the detection of the secondevent marker also triggers a temporary recording of the signature of thesegment beginning at the second event marker and processing of thatsignature proceeds.)

FIG. 6 illustrates an example where a pair of first and second eventmarkers 140 and 142 are separated by less than 60 seconds but wheresecond event marker 142 does not occur at one of the pre-determinedintervals. Hence, the first marker does not correspond to the beginningof a commercial advertisement or other selected segment. It should benoted that the determination that the first marker does not correspondto a commercial advertisement is not made until 60 seconds following thedetection of the first event marker. Accordingly, the temporarilyrecorded signature recorded following the first event marker is notdiscarded until after the 60 second mark. The detection of the secondevent marker in the interim does not terminate the search for additionalevent markers based upon the first event marker. That search continuesuntil at least 60 seconds from the first event marker. Also, thedetection of the second event marker triggers a temporary recording of asecond signature and a contemporaneous search for additional eventmarkers following the second event marker at 15, 30 or 60 secondintervals.

FIG. 7 illustrates an example where a pair of event markers 144 and 146are separated by 30 seconds. Hence, the first marker corresponds to acommercial advertisement, and a signature temporarily recorded shortlyafter the first event marker is stored along with other pertinentinformation in the database of memory unit 128 (FIG. 1). It should benoted that the determination that the first and second event markers 144and 146 correspond to the beginning and end of a commercialadvertisement is made shortly after second event marker 146 is detectedand is not deferred until 60 seconds from the first event marker. Also,FIG. 7 shows another event marker 148 occurring between event markers144 and 146 but not at one of the predetermined time periods. Thedetection of the additional event marker in the interim between eventmarkers 144 and 146 does not terminate the search for an additionalevent marker at any of the predetermined time periods from the firstevent marker. The detection of event marker 148 however triggers atemporary recording of another signature immediately thereafter and acontemporaneous search for event markers following at 15, 30 or 60second intervals.

Hence, FIGS. 6-7 illustrate that more than one signature may betemporarily recorded at any given time and that multiple contemporaneoussearches may be performed for subsequent event markers with one searchfor each event marker. Indeed, in the exemplary implementation, eachevent marker, for which the corresponding signature is not found in thesignature database, triggers a search for an additional event marker atone of the pre-determined intervals thereafter. As each search may lastas long as 60 seconds during which time a number of additional eventmarkers may be encountered, a number of signatures may need to besimultaneously temporarily stored and coordinated. Additionally, thetime that each event marker is detected is recorded to allow calculationof the various time intervals. Accordingly, a temporary signature andevent marker time memory unit 150 is provided in connection with controlunit 126 of FIG. 1 for storing the temporary signatures and the time ofthe event marker corresponding to each temporarily stored signature.Signatures stored therein are either erased after 60 seconds, if noevent marker is detected at any of the pre-determined intervals, ortransferred to the signature memory unit 128, if an event marker isdetected at any of the pre-determined intervals. In the exemplaryembodiment, control unit 126 of FIG. 1 coordinates storage ofinformation within temporary memory unit 150 and performs the varioussearches for additional event markers. In this regard, the control unitmay be a microprocessor pre-programmed with appropriate software tocoordinate the aforementioned operations. Alternatively, the controlunit may be a dedicated integrated circuit pre-configured withappropriate hard-wired logic to coordinate the operations. Otherappropriate devices may be employed as well.

Thus, by detecting various event marker times, the system can determinewhether a segment, which does not have a matching stored signature, isnevertheless a commercial advertisement segment. Hence, each receivedcommercial advertisement is detected either immediately via a signaturematch or at the end of the segment via an event marker analysis. Once acommercial advertisement is detected, the system determines whether itrepresents the beginning of a new commercial advertisement group and, ifso, muting is maintained for at least two minutes thereafter, regardlessof whether the subsequent segments have matching signatures in thedatabase. In one implementation, this is achieved as follows. For anydetected commercial advertisement segment, if no other commercialadvertisement segment preceded it during the previous 60 seconds, orsome other predetermined minimum period of time, then the systemidentifies the detected commercial advertisement segment as being thefirst of a new group. If it were not the first of a new group, then aprevious commercial advertisement segment of the same group would atleast have terminated at some point during the preceding 60 seconds.(This assumes that no two consecutive commercial advertisement segmentsof a common group are ever separated by more than 60 seconds ofnon-commercial advertisement segments such as station breaks etc. Inmost cases, this assumption is correct.) Once the system identifies thefirst commercial advertisement of the group, muting is initiated andmaintained for at least two minutes, or some other predetermined minimumgroup time period, from the beginning of that commercial advertisement.Notably, this determination is made regardless of whether the commercialadvertisement was detected via signature match or event marker analysis.If detected by signature match, the determination is made during thereception of the commercial advertisement. If detected via event markeranalysis, the determination is not made until the end of the segment. Ineither case, the duration of continuous muting is calculated based onthe beginning of the first commercial advertisement segment of thegroup. As noted, muting is maintained for some predetermined period oftime representative of the minimum duration of a group of commercialadvertisements such as two-minutes. Any particular group may be longerin duration and continuous group-based muting may therefore end duringthe group. Signature-based muting, however, will continue for anyremaining commercial advertisements of the group that have matchingsignatures in the database. Hence, the remaining advertisements of thegroup will not necessarily be un-muted. Other techniques for detectingthe beginnings and predicting the endings of commercial advertisementgroups may alternatively be employed.

Manual Addition of Signatures to Library

Instead of or in addition to the above-described process ofautomatically adding signatures of detected commercial advertisementsegments to memory unit 128, a signature may be added by an operatorcommand. While viewing a television broadcast, a commercialadvertisement segment or other unwanted segment may be encountered thatdoes not already have a stored signature and, therefore, is not muted.If the viewer wishes to have future airings of this unwanted segmentmuted, the viewer need only press an appropriate button or other controlon the remote control unit for television set 100. The signatureassociated with the most recent event marker is then added to memoryunit 128. Thereafter, a re-broadcast of the same segment will bedetected and muted as previously described.

Methods of Operation

With reference to the remaining Figures, further details of exemplaryand alternative method and apparatus embodiments of the invention willbe described.

FIG. 8 is a flowchart summarizing steps performed by the commercialdetection and muting system of FIG. 1 or by any other appropriate systemfor performing commercial advertisement detection and muting. As many ofthese steps have already been described above, only additional aspectsof the detection and muting technique will be described in detail.Initially at step 200, a television broadcast signal is received. Thetelevision signal is searched to detect event markers, step 202. If anevent marker is not detected, step 204, the television signal is merelyoutput at step 206 perhaps to a display device such as monitor 104 (FIG.1). Steps 200, 202, 204 and 206 are repeated until an event marker isdetected at step 204 triggering the beginning of a broadcast segmentevaluation process for the broadcast segment beginning at the detectedevent marker, step 208. As will be described below, the broadcastsegment evaluation process operates to determine whether the broadcastsegment beginning at the corresponding event marker is a commercialadvertisement and if so mutes the output of the television signal duringthe commercial advertisement. After the broadcast segment evaluationprocess has been triggered for that event marker, step 206 is againexecuted to continue outputting the television signal. Hence, thetelevision signal is not stored or otherwise delayed but is immediatelyoutput in real-time. The broadcast segment signature evaluation processis performed shortly after detection of the event marker such that verylittle of the television signal is output before a determination ofwhether the signal needs to be muted is achieved.

Steps 200-206 are repeatedly performed to search the television signalfor additional event markers. Each newly detected event marker triggersa separate broadcast segment signature evaluation process for thebroadcast segment beginning at that event marker. If part of the systemperforming the method of FIG. 8 is implemented as a software program,the individual broadcast segment evaluation processes may be, forexample, separate and distinct software processes running on amicroprocessor or may merely be separate logic threads within a singlesoftware process. They are described herein as separate processesprimarily to help clarify that contemporaneous searches for subsequentevent markers may need to be performed for each of a set of consecutiveevent markers and not to imply any particular architecture by which themethod of FIG. 8 must be implemented.

Beginning at step 210, one broadcast segment evaluation processtriggered at step 208 is set forth. Step 210 is shown connected to step208 by a dashed line to indicate that the broadcast segment evaluationprocess proceeds independently of, and contemporaneously with, steps200-206. At step 212, the signature corresponding to the currentbroadcast segment is read from the television signal. Additional detailsof step 212 are step forth in FIGS. 9-11 and will be described below. Atstep 214, the signature is compared against stored signatures in adatabase of signatures known to correspond to commercial advertisementsor other unwanted broadcast material. If there is no signature match,step 216, then step 218 is performed to determine whether the currentbroadcast segment nevertheless comprises a commercial advertisementsegment for which a signature should be stored and, if so, what thelength of the commercial advertisement segment is in seconds. Additionaldetails of step 218 are set forth in FIG. 12 and will be describedbelow. If a signature is not to be stored at step 220 (e.g., if thecurrent segment is determined to not be a commercial advertisement),then step 222 is executed to end the broadcast segment evaluationprocess. If, however, a signature is to be stored (e.g., the currentsegment is determined to be a commercial advertisement), step 224 isexecuted to store the signature of the current segment read at step 212in the database such that, when the same commercial advertisementsegment is encountered again, the commercial advertisement can bedetected in real-time. As noted above, the determination of whether abroadcast segment comprises a commercial advertisement segment may takeup to 60 seconds from the event marker defining the beginning of thesegment. Additional details of step 224 are set forth in FIGS. 13-16 andwill be described below.

At step 224, in addition to storing the signature for the currentbroadcast segment, the system also stores the length of the commercialadvertisement and other pertinent information such as the latest dateand time of day (date/time) of the broadcast of the segment. The lengthis used to determine how long to mute the output signal if the samecommercial advertisement is again encountered. The latest date/time ofbroadcast can be employed to selectively erase signatures from thedatabase based upon how recently the signatures had been encountered.More information regarding the content and purpose of information storedin the database along with the signature will be described in greaterdetail below. After the database is updated at step 224, step 225 isperformed to determine whether the detected commercial advertisement isthe first of a group and if so continuous group-based muting, describedabove, is performed until at least the end of the minimum pre-determinedgroup time period, assuming no user over-ride. Then, step 222 isexecuted to end the current broadcast segment evaluation process.

Hence steps beginning at step 218 are performed only if the signature ofthe current broadcast segment does not match any in the database asdetermined at step 216. If there is a signature match at step 216indicating that the current broadcast segment is a commercialadvertisement, the system first determines whether the commercialadvertisement is the first of a group, step 226, and then begins mutingthe output television signal, step 227, by using a mute control signalin the manner described above with reference to FIGS. 1 and 3.Accordingly, television signals output at step 208 are muted and willremain muted until the mute control signal is deactivated. If theadvertisement is the first of a group, the muting will ultimatelycontinue until the end of the predetermined minimum group time period asdescribed above, assuming no user over-ride. If not, muting willcontinue until the end of the advertisement, again assuming noover-ride. The length of the commercial advertisement is then read fromthe database, step 228, such that system can determine the end of thecurrent commercial advertisement segment. Hence, if a previouslytriggered group-based muting terminates during the current segment, thesystem will continue to mute until the end of the segment. At step 230,the system updates the parameters stored with the signature, such as thelatest date and time of broadcast. Then, at step 232, the muting isterminated either upon user over-ride or upon the latter of thecompletion of the current commercial advertisement segment and thecompletion of the current group (as determined by the minimumpre-determined group time period) if group-based muting had beentriggered. The current commercial advertisement segment, as with allsegments, ends with an event marker which is detected at step 204triggering another broadcast segment evaluation process.

Hence, FIG. 8 illustrates that broadcast segment evaluation processesare triggered upon the detection of each event marker. As discussedabove, each broadcast segment evaluation process may take up to 60seconds to determine whether the broadcast segment beginning at theevent marker triggering the process is a commercial advertisement ornot. During that period of time a number of other event markers may bedetected and a broadcast segment evaluation process triggered for eachone. Hence, a number of evaluation processes may proceed simultaneously.The resolution of one process may moot or obviate some of thelatter-triggered processes. For example, if a first triggered processdetermines that the corresponding broadcast segment is a commercialadvertisement, then any event markers detected before the end of thebroadcast segment thereby occurred during the commercial advertisementand therefore do not represent the beginnings of unique commercialadvertisements, and the broadcast segment evaluation processes triggeredthereby may be terminated. In other words, if a commercial advertisementis detected because a pair of event markers are found to be exactly 60seconds apart, any other event markers detected during that 60 secondperiod thereby occurred during the 60 second commercial and thereforecan be ignored. On the other hand, if after 60 seconds a first triggeredprocess determines that a first event marker at the beginning of that 60second period is not the beginning of a commercial advertisement, thenany event marker detected after that first event marker may itselfrepresent the beginning of a commercial advertisement segment, and thebroadcast segment evaluation processes triggered thereby may not beterminated until the situation is further resolved. Conversely, if asecond triggered process determines that the corresponding broadcastsegment is a commercial advertisement, then any event markers detectedbefore the beginning of that broadcast segment occurred before thecommercial advertisement began and therefore do not themselves representthe beginnings of unique commercial advertisements, and any broadcastsegment evaluation processes triggered thereby may be terminated. Forclarity in illustrating the basic process of the invention, the detailsof the logic by which the resolution of one broadcast segment evaluationprocess affects others are not set forth in FIG. 8 but may be readilyincorporated within a computer program or other logic device configuredfor implementing the method of the invention in accordance with theteachings provided herein.

With reference to FIGS. 9-16 details of exemplary implementations ofsome of the steps of FIG. 8 will now be described.

As noted, step 212 of FIG. 8 operates to read a signature correspondingto an event marker from the broadcast signal. Any of a wide variety oftechniques for defining the signature of a broadcast segment and forreading and recording the signature may be employed. FIG. 9 sets forthone exemplary technique for reading a signature corresponding to anevent marker from a broadcast signal. At step 236, the system waits apre-determined number of frames from the completion of the event marker.The system may wait, for example, 10 frames or the equivalent period oftime. At step 238, the system then records the current frame, e.g., thesystem takes a snap shot of the tenth frame, hereinafter referred to asthe test frame. An exemplary test frame 240 is illustrated in FIG. 10.At step 242, the system determines, for each of a preselected set ofsignature test lines of the test frame, the average luminance level ofthe lines. The signature test lines may be, for example, the first 64odd lines of the frame beginning at line 23 or perhaps the 5th, 10th,15th etc. lines. A few exemplary signature test lines are identified inFIG. 10. The average luminance level of each line may be determined, forexample, by routing the luminance signals for those lines throughcircuitry (not shown) configured to generate a test voltage levelrepresentative of the average voltage level of the luminance signal. Atstep 244 a determination is made, for each signature test line, as towhether the average luminance level for that line exceeds apre-determined threshold. This determination may be made, for example,by defining the threshold level in terms of a threshold voltage leveland comparing the test voltage level with the threshold voltage level.At step 246, the system assigns a bit value of 1 to each line exceedingthe threshold luminance level and a bit value of 0 otherwise. Of course,opposite bit values could alternatively be employed. At step 248, thebit values are concatenated together yielding a single binary bit stringhash code signature with one bit per test line of the test frame. Anexemplary bit string 250 is set forth in FIG. 11. Execution then returnsto step 212 of FIG. 8 via step 249 where the signature is comparedagainst those in the database.

Hence, a bit string signature is evaluated based upon the averageluminance level of selected lines of one selected frame following theevent marker. Any bit string of suitable length may be employed. If toofew test signature lines are selected yielding a short bit string, thebit string may not have sufficient bits to uniquely identify thebroadcast segment. Accordingly, it is preferred that at least 32signature test lines are selected yielding a bit string of at least 32bits. With 32 bits, it is reasonably unlikely that test frames fromdifferent program segments will have the same bit string and hence, thebit string can be used to uniquely identify each unique broadcastsegment. Also, a test frame occurring fairly promptly after the eventmarker should be selected. If a test frame is selected that occurs toolate after the event marker, the system will not be able to promptlydetermine whether the signature of the test frame matches any of therecorded signatures and will therefore not be able to promptly beginreal-time muting. Hence, it is preferred that the test frame occur nolonger than about one second after the event marker. In alternativeimplementations, signature test lines may be drawn from two or moreseparate test frames.

Thus FIGS. 9-11 set forth exemplary techniques for reading a signaturewherein a bit string is generated based upon whether average luminancelevels of selected signature test lines of a selected test frame exceeda threshold level. Of course, the same test signature lines, the sametest frame and same threshold level must be employed each time to ensurethat the same bit string is generated every time the same broadcastsegment is encountered. Hence, care should be taken in detecting andcomparing signatures to compensate for skew or other factors in thetelevision signal. Details of one possible system for detecting andcomparing signatures which addresses skew and other factors is set forthin U.S. Pat. No. 5,504,518 summarized above.

If the television signal is digital, average luminance levels need notbe employed. Rather, the signature may be simply based on selected bitswithin one or more selected digital frames. Skew and other relatedproblems are also avoided or more easily overcome.

As noted, step 218 of FIG. 8 operates to determine if the currentbroadcast segment, for which no signature match is found, neverthelesscorresponds to the beginning of a segment for which a signature shouldbe stored in the database. FIG. 12 sets forth one exemplary techniquefor making the determination. An overview of the technique was providedabove in connection with FIGS. 4-7. At step 251, it is first determinedwhether the system is operating in a manual or automatic mode for addingsignatures to the library. Any particular device may have only one suchmode enabled. Alternatively, a device may have both modes implementedand operating concurrently or may leave the choice of mode to the user.In the manual mode of operation, control passes to step 252 to determineif an operator command has been sent to designate the current segmentfor storage of a signature. Such a command may be sent, for example,using an infrared remote control device. If the command is detected, thesignature extracted in step 212 (FIG. 8) is designated for storage.

In the manual mode, the segment length can be determined in one of twoways. First, in a purely manual mode, the operator may designate the endof the segment with another command. The interval between thecorresponding event markers preceding each of the two commands is thenstored as the length of the segment. This is particularly useful fordesignating segments that do not have standardized lengths. Secondly,event markers may be processed as in the automatic mode, which isdescribed next. In this case, the manual designation command is treatedas a flag to ensure that a segment is classified as a commercialadvertisement. Returning to step 251, if the automatic mode is enabled,the process proceeds to step 253 where a set of predetermined timeperiods based on standard commercial advertisement lengths are read froma memory. Examples include 15 seconds, 30 seconds, 60 seconds. At step254, the system sets appropriate timers to begin waiting each of thepre-determined time periods. At step 256, the system determines whethera second event marker occurs at any of the pre-determined time periodsfollowing the first event marker. For example, the system first waits 15seconds from the time of the first event marker and detects whether thetelevision signal includes an event marker at that point in time. Ifnot, the system waits until 30 seconds from the first event marker andso on. If a second event marker is detected at any of the predeterminedtimes, step 258, then step 260 is performed wherein the broadcastsegment beginning at the first event marker is identified as acommercial advertisement. At step 262, the system determines the lengthof the commercial advertisement by comparing the time the second eventmarker was detected with that of the first marker. Execution thereafterreturns through step 264 to step 218 of FIG. 8. If at step 258, no eventmarker is found at any of the pre-determined time periods following thefirst event marker, then step 266 is performed wherein the broadcastsegment starting at the first event marker is identified as not being acommercial advertisement segment and again execution returns to step 218of FIG. 8.

Step 224 of FIG. 8 operates to store the signature and other pertinentinformation in the database if the broadcast segment is found to be acommercial advertisement. The database, however, may be full. Adetermination then needs to be made as to which previously storedsignatures, if any, should be overwritten to make room for the newlyrecorded signature. FIGS. 13-16 set forth details of one exemplarytechnique. At step 268, the system determines whether the database isfull and if not, step 270 is performed to store the signature, thelength of the commercial advertisement for the segment corresponding tothe signature and the date/time the event marker marking the beginningof the commercial advertisement was detected. Other information may alsobe recorded for the purpose of allowing the system to intelligentlydecide which records to erase as the database becomes full. For example,if the system is configured to detect commercial advertisements evenwhile the television set is otherwise not in use (as will be describedin greater detail below with reference to FIG. 16), the system alsostores an in-use weighting factor, which may be a single bit value,indicating whether the commercial advertisement was detected during aperiod of time when the television was not otherwise in use or whetherit was detected while the television was in use. The system may alsoincrement a counter identifying the number of times the commercialadvertisement is encountered.

FIG. 14 sets forth an exemplary database (for use as signature memoryunit 128 of FIG. 1) having, for each unique signature stored therein,entries for the first broadcast date/time, the latest broadcastdate/time, the number of times the commercial advertisement isencountered and the in-use weighting factor. When the signature entry isinitially recorded (step 224 of FIG. 8), the first date/time and thelatest date/time are the same, the number of broadcasts is one and thein-use weighting factor is either set to 1 or 0 depending upon whetherthe television set is currently in use.

Within FIG. 13, if the database is found to be full at step 268 thenstep 272 is performed wherein the system selects one of the previouslystored records in the database to be overwritten based upon, forexample, the latest date/time that the previous signatures wereencountered, the first date/time the signatures were encountered, etc.For example, depending upon system pre-programming, the system mayoverwrite whichever entry was least recently written to the database asindicated by the latest date/time of broadcast information. Thistechnique has the advantage of overwriting signatures corresponding tocommercial advertisements not encountered recently and thereby keepingthe database up to date. If such is the case, no further informationneed be recorded along with the signature other than the latestdate/time which must be updated upon each detection of the signature(see step 230 of FIG. 8). As another example, the system may overwritewhichever signature record has the lowest frequency of occurrence. Insuch a case, the system calculates a frequency of occurrence based uponthe first date/time of entry, the latest date/time of entry and thenumber of broadcasts encountered. This technique has the advantage ofoverwriting signatures not frequently encountered even though thesignature may have been recently encountered.

As another example, the system may overwrite whichever signature simplyhas the least number of encountered broadcasts as represented by thenumber of broadcasts counter. To ensure that newly stored signatures arenot immediately overwritten, the system may also look at the earliesttime of broadcast and overwrite a signature only if it was recorded someminimum amount of time earlier.

If the system is configured to search for commercial advertisements evenwhile the television set is not otherwise in use, the system may beconfigured to overwrite signatures encountered during times that thetelevision was not otherwise in use first before overwriting signaturesencountered while the television set was in use. This has the advantageof eliminating signatures that correspond to commercial advertisementsnot ordinarily encountered while the viewer of the television settypically watches television. In this regard, whenever a signature isfirst encountered, the system simply determines whether the televisionset is on and if so, sets the in-use bit to 1 if the set is on and 0otherwise. Thereafter, if the signature is encountered while the in-usebit is set to 0 and while the television set is on, the in-use bit isre-set to 1. Once the in-use bit is set to 1 it is not reset to 0 untilthe record is erased. Hence, the in-use bit indicates whether thesignature has been encountered at least once while the television setwas on. In any case, if a signature record needs to be overwritten,records having in-use bits set to 0 are overwritten first before anyrecords having in-use bits is set to 1.

In yet another example, the system may overwrite whichever entry wasfirst written to the database as indicated by the first date/time ofbroadcast information. If such is the case, the memory is preferablyimplemented, as illustrated in FIG. 15, as a FIFO 274 such that noexplicit date/time value need be stored. If implemented as set forth inFIG. 14, the memory is preferably a RAM.

In yet another implementation, illustrated in FIG. 16, the database iscapable of storing multiple records per signature. More specifically,database 276 of FIG. 16 stores a record identifying the broadcastdate/time of each detection of each commercial advertisement signature.Accordingly the database maintains a record of when each commercialadvertisement is broadcast. Exemplary signatures #1 ₁-#1 _(N) and #2₁-#2 _(M) are shown. Periodically, the contents of the database areoutput to provide a list, perhaps for broadcast verification purposes,of the date and time of each broadcast of each commercial advertisement.Preferably, the database is of sufficient size such that records do notneed to be overwritten prior to outputting the date/time broadcastinformation.

As noted above, in one implementation the system is configured tooperate in a background mode to detect commercial advertisements andrecord the corresponding signatures even while the television set is nototherwise in use. This is provided in part to allow the system toquickly build a database of commercial advertisement signatures suchthat, when the television set is in use, there is a higher probabilitythat commercial advertisements encountered will be muted. The backgroundmode is particularly advantageous for use when the system is initiallyactivated with few, if any, pre-stored signatures.

FIG. 17 sets forth a method for implementing the background mode.Initially, at step 300, commercial detecting and muting system 108(FIG. 1) is powered-up with audio and video outputs to televisionmonitor 104 (also FIG. 1) disabled. At step 302, the database isexamined to determine whether it is complete. Depending uponpre-programming, the database may be regarded as being complete if it isfull or perhaps if it holds some threshold number of signature records.Assuming that the database is complete, then step 304 is performed wherethe system waits for user input to turn the television monitor on.Hence, no background processing is initiated. Once the monitor isactivated, the audio and video are enabled, step 306, and the systembegins receiving a broadcast signal, step 308. As with the basic methodof FIG. 8, the system searches for event markers, step 310, and if eventmarkers are detected, step 312, the system begins a broadcast segmentevaluation process to determine whether the broadcast segment is acommercial advertisement, step 314. Details of the broadcast segmentevaluation process are set forth in FIGS. 8-15 and have been describedabove. Then, regardless of whether an event marker has been detected ornot, step 316 is performed to output the received broadcast signals tothe monitor. Since audio and video had previously been enabled, thebroadcast signal is thereby displayed by the television monitor,although perhaps muted if currently displaying a detected commercialadvertisement. At step 318, the system determines whether the user hasdeactivated the television monitor and, if not, steps 308-318 are againperformed. In this manner, steps 308-318 are repeated in a loop untilthe television monitor is turned off—at which time step 320 is performedto again disable audio and video. At step 302, the database is againexamined to determine if it is still complete and if so the system waitsat step 304 until the user again activates the television monitor. Step302 is performed following step 320 because, in some implementations,the user is provided with the capability of clearing all or a part ofthe commercial advertisement signature database while operating thetelevision set. Hence, the commercial advertisement database may nolonger be complete.

If at step 302, the database is not complete, either because the systemis newly installed and has not yet built up a complete database orbecause the user has cleared the database, execution proceeds to step322 where the system determines whether the user has activated thetelevision monitor and if so execution proceeds to step 306 andfollowing for non-background commercial advertisement detectionprocessing as already described. If the user has activated thetelevision monitor, execution instead proceeds immediately to step 324where background processing begins. (It should be noted that step 322differs from step 304 where the system waits for the user to activatethe television monitor. With step 322, the system does not wait for theuser to activate the television monitor but immediately triggers eitherbackground or non-background processing.)

Background processing begins at step 324 wherein broadcast signals arereceived. As with the basic method of FIG. 8, the system searches forevent markers, step 326, and if event markers are detected, step 328,the system begins a broadcast segment evaluation process to determinewhether the broadcast segment is a commercial advertisement, step 330.Details of the broadcast segment evaluation process are set forth inFIGS. 8-16 and have been described above. Then, regardless of whether anevent marker has been detected or not, execution returns to step 302 toagain evaluate whether the database is complete. It should be noted thatin the background processing loop of steps 302-330, there is no step ofoutputting the broadcast signal. Since audio and video had previouslybeen disabled, no output signal is needed.

If the database remains incomplete and the television monitor remainsdeactivated, the background processing mode of steps 302-330 isperformed in a loop to build a signature database. In this regard, everytime a broadcast segment evaluation process is triggered at step 328which detects a commercial advertisement, the signature for theadvertisement is added to the database in the manner described abovewith reference to FIGS. 8-16. The background processing loop ends eitherwhen the database becomes complete (at which time the system waits atstep 304 for user input to activate the television monitor) or when theuser activates the television monitor at step 322 even though thedatabase is not yet complete. In either case, non-background processingis then performed.

Thus FIG. 17 sets forth a method for operating the system in abackground mode to build a signature database even while the televisionset is not otherwise in use and further sets forth a technique fordetermining whether background or non-background processing should beperformed based upon the completion state of the database and uponwhether the user activates the television monitor. In otherimplementations, rather than detect whether the database is full andactivate the background processing mode if it is not full and the userhas not activated the monitor, the system merely operates in backgroundmode for some predetermined period of time after the initial systempower up (unless the user has activated the monitor). The pre-determinedperiod of time may be, for example, two weeks.

As noted, a system employing the above-described techniques may beimplemented either as a plug-in module or as an external device. If aplug-in module, the module is interconnected between an output of atuner portion of the television set and an input to an audio/videodisplay portion of the television set to output selectively muted orotherwise altered audio and video signals. If external, the system maybe interconnected to a television set as shown in FIG. 18.

A selective muting unit 400 is connected to audio 402 and video 404output jacks of a television set 406. The audio and video output jacksare connected internally to a tuner portion (not separately shown) ofthe television set. Selective muting unit 400 receives the audio andvideo signals from the tuner via the audio and video output jacks anddetermines, using the techniques described above, when to initiate andterminate muting. An infrared muting transmitter 408 receives anelectrical muting signal from muting unit 400 and outputs an infraredsignal to an infrared input 410 of the television set. The infraredmuting signal is set to emulate the infrared signal normally received bythe television set from an infrared remote control unit (not separatelyshown) when a user presses a mute button on the remote control. In thismanner, the audio is muted during detected commercial advertisements orother unwanted broadcast material as described above. The mute signal istransmitted at the beginning of a detected commercial advertisement anda second un-mute signal is transmitted either at the end of thecommercial advertisement or at the end of a group of commercialadvertisements.

If the television set is provided with a video mute capability triggeredby a video mute infrared signal from a remote control unit, theninfrared muting transmitter 408 additionally transmits the video mutesignal to thereby provide both video and audio muting. Other televisionfunctions responsive to infrared input control may be additionally oralternatively exploited. Also, if the television set is provided withaudio and video input jacks along with the audio and video output jacks,muting unit 400 may be configured to output muted audio and videosignals into the audio and video input jacks of the television set. Insuch an embodiment, the television set is set to a mode for outputtingsignals received via the tuner of the television set through the audioand video output jacks and for displaying signals received through theaudio and video input jacks. Hence, selectively muted television signalsare display in the same manner as if the muting unit were mountedinternally within the television set.

Thus far, the invention has been described with respect to exemplaryembodiments employing television sets. FIG. 19 illustrates an embodimentemploying a PCTV 500 configured to operate either in a television modeor a personal computer (PC) mode. Depending upon the mode, PCTV 500receives television signals via a cable 502 and an internal tuner (notseparately shown) or receives and transmits modulated data signals overa telephone line 504, or other data line such as an ISDN line.Alternately, both television and modulated data input and output may bevia a single line such as a cable line. In any case, while in televisionmode, PCTV 500 displays television signals via a monitor 506 and playsaudio signals via speakers 508. While in PC mode, the PCTV displaysgraphic images generated by computer programs such as web browsers, wordprocessors, spread sheets and the like via monitor 506, plays anycorresponding audio via speakers 508 and receives user input via akeyboard 510.

PCTV 500 is provided with hardware or software or both (not separatelyshown) for selectively muting the audio and video of television signalswhile operating in television mode in the same manner as describedabove. Hence, commercial advertisements or other unwanted broadcastmaterial are selectively muted. When implemented via hardware, a plug-inmodule as described above is provided. The plug-in module either has itsown memory for storing signatures and other information or is configuredto employ a disk drive or other storage unit 512 of the PCTV for suchpurposes. Signatures may be stored temporarily during processing with aRAM (not shown) of the PCTV to expedite processing. If implemented insoftware, the software may, for example, run on a microprocessor of thePCTV to process digitized portions of the television signal (provided byan analog to digital converter not separately shown) for mutingpurposes, again using a disk drive or other storage unit 512 for storingsignatures and the like. If the PCTV is configured to receive digitizedtelevision signals, then no tuner or analog to digital converter may beneeded.

When in PC mode, the PCTV does not operate to perform any muting, unlessthe PC simultaneously displays the television signals within a window ofmonitor 506. Principles of the invention may be additionally applied todetect and selectively process other types of incoming data signalsbesides television signals to mute or otherwise alter unwanted portionsof the signals, including signals otherwise processed only in PC modeincluding, for example, advertisement portions of input web pages.

What has been described are methods and apparatus for detectingcommercial advertisements in real-time by comparing signatures ofreceived broadcast segments with a database of stored signaturescorresponding to known commercial advertisements. Segments having asignature matching any of the stored signatures may be muted orotherwise altered. For segments having signatures not found in thedatabase, the system may nevertheless determine whether the segment is acommercial advertisement and, if so, add the signature to the database.This latter determination may be based upon known characteristics ofcommercial advertisements. In one exemplary embodiment, thedetermination is based upon the assumption that commercialadvertisements are always preceded and followed by black frame/low audioevent markers and are always 15, 30 or 60 seconds in length. Thisappears to be a fairly universal rule at least with television signalsbroadcast in the United States. However, if employed in connection witha television broadcast system wherein commercial advertisements aretypically of different lengths, the system of the invention may bepre-programmed with those different lengths. In other implementations,other appropriate rules or characteristics of commercial advertisementsor other selected segments may employed either additionally oralternatively for distinguishing the selected segments from otherbroadcast segments.

In general, almost any set of rules or characteristics of broadcastsignals that serve to distinguish commercial advertisements or otherselected segments from program segments may be employed to determinewhether or not a broadcast segment, for which there is no signaturematch, is nevertheless a commercial advertisement. The rules are merelyprogrammed or otherwise incorporated within system 108 of FIG. 1 todetect commercial advertisements and an appropriate signature or otherdistinguishing feature is stored for application against future receivedbroadcast signals. Indeed, suitable rules may be applied to detectalmost any desired selected segment within a television broadcast signaland not necessarily just commercial advertisements.

Although described with reference to exemplary systems which operate tomute a television signal, almost any other desired action mayalternatively be triggered. For example, the television set maycompletely cut off the broadcast video and audio feed and replace thevideo feed with, for example, a screen presenting an appropriate logorepresentative of the commercial determination system such as thetradename or trademark of the system. As another example, the televisionset may change the reception channel upon detection of a commercialadvertisement then return to the same channel upon completion of theadvertisement or group of advertisements. Such requires a two-tunersystem, which is common for television sets with picture-in-picture(PIP) capability. Thus, when a commercial advertisement or otherunwanted segment is detected, the television set will display the signalfrom an alternate channel, which may be specified by the viewer. Thesignal for the primary channel may be displayed in a PIP window, ifdesired, so that the viewer can monitor the signal in the event that thedesired program resumes before the expected end of the unwanted segment.Upon return to the primary channel, the PIP window is removed or, ifdesired, the PIP window may then display the alternate channel.

Also, as described above, the system may merely record the date and timeof each commercial advertisement for broadcast verification purposes. Ascan be appreciated, a wide range of alternative implementations areavailable consistent with the general principles of the invention.

The preceding description of exemplary embodiments is provided to enableany person skilled in the art to make or use the invention. It should beappreciated that not all components necessary for a completeimplementation of a practical system are illustrated or described indetail. Rather, only those components necessary for a thoroughunderstanding of the invention have been illustrated and described.Furthermore, it should be understood that the exemplary embodiments ofthe invention described herein are merely illustrative of generalprinciples of the invention which can be applied to other applications,to achieve other ends, and to remedy other problems not specifiedherein. Accordingly, the scope of the invention should not be limited tothe exemplary embodiments described herein

1. A method of operating a television receiver comprising: receiving atelevision signal in a television receiver; detecting a first event inthe television signal; capturing a signature associated with a firstsegment of the television signal following the first event; comparingthe captured signature to stored signatures; if the captured signaturematches one of the stored signatures, controlling the televisionreceiver to alter a display of the television signal; if the capturedsignature does not match any of the stored signatures, storing thecaptured signature in a temporary storage location; adding the capturedsignature to the stored signatures if a second event in the televisionsignal is detected within a predetermined window of time following thefirst event.
 2. The method of claim 1 wherein controlling the televisionreceiver to alter the display of the television signal comprises mutingan audio portion of the television signal.
 3. The method of claim 1wherein controlling the television receiver to alter the display of thetelevision signal comprises muting a video portion of the televisionsignal.
 4. The method of claim 1 wherein controlling the televisionreceiver to alter the display of the television comprises providing analternate video signal to replace the received television signal.
 5. Themethod of claim 4 wherein the received television signal is displayed ina window within a display of the alternate video signal.
 6. The methodof claim 1 wherein at least some of the stored signatures are stored inresponse to a user request.
 7. A method of operating a televisionreceiver comprising: receiving a television signal in a televisionreceiver; detecting a first event in the television signal; capturing asignature associated with a first segment of the television signalfollowing the first event; comparing the captured signature to storedsignatures; if the captured signature matches one of the storedsignatures, controlling the television to alter a display of thetelevision signal; if the captured signature does not match any of thestored signatures, storing the captured signature in a temporary storagelocation; monitoring a signal receiver for a user input signal; addingthe captured signature to the stored signatures if the user input signalis received prior to detection of a next event in the television signal.8. The method of claim 7 wherein controlling the television receiver toalter the display of the television signal comprises muting an audioportion of the television signal.
 9. The method of claim 7 whereincontrolling the television receiver to alter the display of thetelevision signal comprises muting a video portion of the televisionsignal.
 10. The method of claim 7 wherein controlling the televisionreceiver to alter the display of the television comprises providing analternate video signal to replace the received television signal. 11.The method of claim 10 wherein the received television signal isdisplayed in a window within a display of the alternate video signal.12. A television set comprising: a television signal receiver; means fordetecting a first event in the television signal; means for capturing asignature associated with a first segment of the television signalfollowing the first event; means for comparing the captured signature tostored signatures; means for altering the display of the televisionsignal if the captured signature matches one of the stored signatures;means for storing the captured signature in a temporary storage locationif the captured signature does not match any of the stored signatures;means for adding the captured signature to the stored signatures if asecond event in the television signal is detected within a predeterminedwindow of time following the first event.
 13. The television set ofclaim 12 wherein the means for altering the display of the televisionsignal comprises means for muting an audio portion of the televisionsignal.
 14. The television set of claim 12 wherein the means foraltering the display of the television signal comprises means for mutinga video portion of the television signal.
 15. The television set ofclaim 12 wherein the means for altering the display of the televisionsignal comprises means for replacing the received television signal withan alternate video signal.
 16. The television set of claim 15 furthercomprising a picture-in-picture processor to display the receivedtelevision signal in a window within a display of the alternate videosignal.
 17. The television set of claim 12 further comprising amanually-operated user control to store at least some of the storedsignatures.